for _ in range(int(input())):
n = int(input())
a = [*map(int, input().split())]
dp0 = [1] * 31
dp1 = [0] * 31
pre0 = [0] * 31
pre1 = [0] * 31
ans = res = 0
for v in a:
m = v.bit_length() - 1
pre0[m] += dp0[m]
pre1[m] += dp1[m]
res ^= v
for i in range(31):
if res & (1 << i):
dp1[i] += 1
ans += pre1[i]
else:
dp0[i] += 1
ans += pre0[i]
print(ans)
1358D - The Best Vacation | 1620B - Triangles on a Rectangle |
999C - Alphabetic Removals | 1634C - OKEA |
1368C - Even Picture | 1505F - Math |
1473A - Replacing Elements | 959A - Mahmoud and Ehab and the even-odd game |
78B - Easter Eggs | 1455B - Jumps |
1225C - p-binary | 1525D - Armchairs |
1257A - Two Rival Students | 1415A - Prison Break |
1271A - Suits | 259B - Little Elephant and Magic Square |
1389A - LCM Problem | 778A - String Game |
1382A - Common Subsequence | 1512D - Corrupted Array |
667B - Coat of Anticubism | 284B - Cows and Poker Game |
1666D - Deletive Editing | 1433D - Districts Connection |
2B - The least round way | 1324A - Yet Another Tetris Problem |
246B - Increase and Decrease | 22E - Scheme |
1566A - Median Maximization | 1278A - Shuffle Hashing |